Add make dev-arti
as an alternative to C-Tor
#7207
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Status
Ready for review
Description of Changes
Arti is Tor's RIIR effort, and while it is 1.x, the onion service support is still experimental.
Given that, it is to our (and Tor's) benefit for us to try using Arti in development modes to provide feedback. To that end, using Arti is now possible, in parallel, to the existing C-Tor support.
Running
make dev-arti
should give exactly the same experience as the existingmake dev-tor
endpoint, aside from the inital launch, which will be slower since it needs to compile Arti from scratch.As an intentional choice, we don't version pin Arti since this is an experimental thing, so it's more beneficial we just automatically stay on the latest version and fix breakage instead of needing to constantly bump versions.
Note that
make dev-tor
is entirely independent from this, so the two commands will serve the dev server on different onion addresses.As far as the Arti code itself, generating a config.toml file seems much cleaner than adding to
torrc
and generating.auth
files.Testing
How should the reviewer test this PR?
make dev-tor
, see that it's all finemake dev-tor
, see that it uses the same onion addresses and is all fine. Basically this PR should not adversely affect the existing dev-tor in any way.make dev-arti
, wait a bit for it to all compile, and then it works in just about the same way.make dev-arti
again, verify it gives you the same onion addresses as the previous run.Deployment
Any special considerations for deployment? n/a, dev-only
Checklist
make lint
) and tests (make test
) pass in the development containerWhile this modifies the dev container, I explicitly didn't try anything in it yet because this is just for interactive use and not for like, running tests and stuff.